import java.util.*;

public class 空调遥控 {
    /*
    https://ac.nowcoder.com/acm/problem/229310
    这道滑动窗口题主要在理解题意
    那个范围始终在 k - p 到 k + p 之间, 长度始终不变,所以是固定长度的滑动窗口
    只要判断大小arr[i]的大小存在这个范围里即可
     */
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int p = in.nextInt();
        int[] arr = new int[n];
        for(int i = 0;i < n;i++){
            arr[i] = in.nextInt();
        }
        //排序以使用滑动窗口
        Arrays.sort(arr);
        int ret = 0;
        int left = 0;
        for(int right = 0;right < n;right++){
            //如果发现超出窗口, 左边移动直到满足窗口的大小
            while(arr[right] - arr[left] > 2 * p){
                left++;
            }
            //每次判断大小
            ret = Math.max(ret,right - left + 1);
        }
        System.out.println(ret);
    }
}
